package com.xiaoshuidi.cloud.module.contract.dal.dataobject.bill;

import com.xiaoshuidi.cloud.module.contract.enums.bill.OwnerTransferStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
public class OwnerOrderTransferDO {

    private Integer serialNumber;
    private Long id;
    @Schema(description = "合同号")
    private String contractNo;
    @Schema(description = "账单编号")
    private String orderNo;
    @Schema(description = "账单id")
    private Long orderId;
    @Schema(description = "操作人")
    private String operator;
    @Schema(description = "委托付款单号")
    private String number;
    @Schema(description = "门店id")
    private Long apartmentId;
    @Schema(description = "门店名称")
    private String apartmentName;
    @Schema(description = "房间id")
    private Long roomId;
    @Schema(description = "房间名称")
    private String roomName;
    @Schema(description = "业主名称")
    private String ownerName;
    @Schema(description = "业主电话")
    private String ownerPhone;
    @Schema(description = "账单金额")
    private BigDecimal totalAmount;
    @Schema(description = "应付金额")
    private BigDecimal payAmount;
    @Schema(description = "应付款日期")
    private LocalDate oughtPayDate;
    @Schema(description = "确认付款日期")
    private LocalDateTime confirmTime;
    @Schema(description = "状态SUBMIT/WAITING/SUCCESS待处理/处理中/已处理")
    private String status;
    @Schema(description = "收款人名称")
    private String payeeName;
    @Schema(description = "收款人电话")
    private String payeeMobile;
    @Schema(description = "收款银行")
    private String payeeBank;
    @Schema(description = "收款支行名")
    private String payeeBankBranch;
    @Schema(description = "收款支行号")
    private String payeeBankCode;
    @Schema(description = "收款银行省")
    private String payeeBankProvince;
    @Schema(description = "收款银行市")
    private String payeeBankCity;
    @Schema(description = "收款账号")
    private String payeeBankAccount;
    @Schema(description = "流程id")
    private String processInstanceId;

    public String getStatusDesc() {
        return OwnerTransferStatusEnum.getDesc(status);
    }
}
